home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 27.zip / BS1 part 27 / Condo.V2.04_d1.adf / Install-ToFloppy20 < prev    next >
Text File  |  1993-03-08  |  13KB  |  484 lines

  1. ;*************************************************************************
  2. ;    Title:
  3. ;        Install-ToFloppy20
  4. ;*************************************************************************
  5. ;    Description:
  6. ;        The Commodore Installer Script for updating CanDo 2.x diskettes to
  7. ;        use OS2.x
  8. ;*************************************************************************
  9. ;    Author:
  10. ;        Eddie Churchill, c/o INOVAtronics, Inc.
  11. ;*************************************************************************
  12. ;    Still to do:
  13. ;*************************************************************************
  14. ;    History:
  15. ;        14:26:05 CST, 27 Jan 1992
  16. ;            Finished
  17. ;        21:45:12 CST, 21 Jan 1992
  18. ;            Created from Install-CanDo
  19. ;*************************************************************************
  20.  
  21.  
  22. ;******************************************************
  23. ;***** SET UP OUR VARIABLES AND OTHER SUCH STUFF ******
  24. ;******************************************************
  25.  
  26. ; some useful variables
  27.     (set true 1)
  28.     (set false 0)
  29.     (set on true)
  30.     (set off false)
  31.     (set yes true)
  32.     (set no false)
  33.     (set yep yes)
  34.     (set nope no)
  35.     (set is_a_file 1)
  36.     (set is_a_dir 2)
  37.     (set quote "\"")
  38.     (set newline "\n")
  39.     (set nothing "")
  40.     (set testing nope)
  41. ;    (set testing yep) ;<- uncomment this for testing mode
  42.     (set os2 (< 2293760 (getversion "exec.library" (resident)))) ; true if under 2.0
  43.     (set resident_candolib (getversion "cando.library" (resident)))
  44.     (set ntsc_mode false)
  45.     (set pal_mode true)
  46.     (set free-mem (+ (database "total-mem") 0)) ; leftover free ram
  47.  
  48. ; set up our delete options
  49.     (delopts "AskUser" "OkNoDelete" "Force")
  50.  
  51. ; some useful procedures
  52.  
  53. ; some overused strings
  54.     (set omp (cat "One moment please..." newline))
  55.     (set pci "Patching the copied icons.")
  56.  
  57. ; a general purpose global error trapper
  58.     (onerror
  59.         (makeassign "Workbench_Master" (safe))
  60.         (makeassign "CanDoProgram_Master" (safe))
  61.     )
  62.  
  63.     
  64. ;****************************************
  65. ;***** FIGURE OUT WHERE STUFF GOES ******
  66. ;****************************************
  67.  
  68. ; introduce our selfs to the viewers
  69.     (welcome "Welcome to the CanDo 2.0 boot disk update program.  This program uses "
  70.         "the Commodore Amiga Installer.  All of our future new products "
  71.         "will be using this installer and we would love to get any feedback "
  72.         "that might help in improving the installation procedure." newline newline
  73.     )
  74.  
  75. ;*******************************************
  76. ;***** GET CANDO PROGRAM DISK IN HERE ******
  77. ;*******************************************
  78.  
  79. ; ask for the first disk, it should be here but lets check anyway
  80.     (askdisk
  81.         (prompt    "Please insert the disk labeled " quote "CanDo Program" quote ".")
  82.         (help    "The CanDo Program disk contains 1.3 system software.")
  83.         (dest  "CanDo")
  84.         (newname "CanDoProgram_Master")
  85.     )
  86.  
  87. ; tell the user of our progress
  88.     (complete 5)
  89.  
  90. ; make sure that default-dir is pointing to the right place
  91.     (set @default-dest "CanDo:")
  92.  
  93.  
  94. ;***************************************
  95. ;***** GET WORKBENCH DISK IN HERE ******
  96. ;***************************************
  97.  
  98. ; ask for the workbench disk.
  99.     (askdisk
  100.         (prompt    "Please insert the 2.x " quote "Workbench" quote
  101.             " disk into your other diskdrive."
  102.         )
  103.         (help    "The Workbench disk contains 2.x system software.")
  104.         (dest  "Workbench")
  105.         (newname "Workbench_Master")
  106.     )
  107.  
  108. ; tell the user of our progress
  109.     (complete 10)
  110.  
  111.  
  112. ;*******************************
  113. ;***** UPDATE C: DIRECTORY *****
  114. ;*******************************
  115.  
  116. ; first copy over the new c: stuff
  117.     (working omp "Scanning for new C: files on Workbench.")
  118.     
  119.     (copyfiles
  120.         (prompt "Copying 2.x Workbench's C: files needed by CanDo")
  121.         (help "This will copy various C: files to the CanDo Program disk."
  122.             newline
  123.             newline
  124.             @copyfiles-help
  125.         )
  126.         (source "Workbench_Master:C")
  127.         (dest "CanDo:C")
  128.         ; files needed "AddBuffers,Assign,BindDrivers,Copy,Delete,
  129.         ;               Dir,Execute,List,LoadWB,SetPatch"
  130.         (pattern "(AddB|Ass|BindD|Copy|Del|Dir|Exec|List|LoadWB|SetPatch)#?")
  131.         (files)
  132.         (confirm)
  133.     )
  134.     
  135. ; tell the user of our progress
  136.     (complete 15)
  137.  
  138. ; then copy over additional files
  139.     (working omp "Scanning for additional C: files on Workbench.")
  140.     
  141.     (copyfiles
  142.         (prompt "Copying additional 2.x Workbench's C: files needed by CanDo")
  143.         (help "This will copy various C: files to the CanDo Program disk."
  144.             newline
  145.             newline
  146.             @copyfiles-help
  147.         )
  148.         (source "Workbench_Master:C")
  149.         (dest "CanDo:C")
  150.         ; files needed "Version|SetClock|MakeDir|IPrefs|Wait
  151.         (pattern "(Vers|SetClock|MakeDir|IPrefs|Wait)#?")
  152.         (files)
  153.         (confirm)
  154.     )
  155.     
  156. ; tell the user of our progress
  157.     (complete 20)
  158.  
  159. ; delete out of date stuff
  160.     (working omp "Deleting some out of date C: files from the CanDo Program disk.")
  161.     
  162.     ; files to be deleted "CD,Echo,EndCli,FF,NewCLI,Path,Run,Stack"
  163.     (delete "CanDo:C/CD")
  164.     (delete "CanDo:C/Echo")
  165.     (delete "CanDo:C/EndCLI")
  166.     (delete "CanDo:C/FF")
  167.     (delete "CanDo:C/NewCLI")
  168.     (delete "CanDo:C/Path")
  169.     (delete "CanDo:C/Run")
  170.     (delete "CanDo:C/Stack")
  171.     
  172. ; tell the user of our progress
  173.     (complete 25)
  174.  
  175.     
  176. ;**********************************
  177. ;***** UPDATE DEVS: DIRECTORY *****
  178. ;**********************************
  179.  
  180. ; first copy over the new devs: stuff
  181.     (working omp "Scanning for new Devs: files on Workbench.")
  182.     
  183.     (copyfiles
  184.         (prompt "Copying 2.x Workbench's Devs: files needed by CanDo")
  185.         (help "This will copy various Devs: files to the CanDo Program disk."
  186.             newline
  187.             newline
  188.             @copyfiles-help
  189.         )
  190.         (source "Workbench_Master:Devs")
  191.         (dest "CanDo:Devs")
  192.         ; files needed "MountList, Parallel.Device, Printer.Device,
  193.         ;               Serial.Device and System-Configuration
  194.         (pattern "(Mount|Parall|Printer|Serial|System-Con)#?")
  195.         (files)
  196.         (confirm)
  197.     )
  198.     
  199. ; tell the user of our progress
  200.     (complete 30)
  201.  
  202. ; delete out of date stuff
  203.     (working omp "Deleting some out of date Devs: files from the CanDo Program disk.")
  204.     
  205.     ; first the usa1 keymap
  206.     (delete "CanDo:Devs/KeyMaps/usa1")
  207.     
  208.     ; second the clipboard directory
  209.     (delete "CanDo:ClipBoards")
  210.     
  211. ; tell the user of our progress
  212.     (complete 35)
  213.  
  214.     
  215. ;*******************************
  216. ;***** UPDATE L: DIRECTORY *****
  217. ;*******************************
  218.  
  219. ; first copy over the new l: stuff
  220.     (working omp "Scanning for new L: files on Workbench.")
  221.     
  222.     (copyfiles
  223.         (prompt "Copying 2.x Workbench's L: files needed by CanDo")
  224.         (help "This will copy various L: files to the CanDo Program disk."
  225.             newline
  226.             newline
  227.             @copyfiles-help
  228.         )
  229.         (source "Workbench_Master:L")
  230.         (dest "CanDo:L")
  231.         ; files needed "Port-Handler"
  232.         (pattern "Port-Handler")
  233.         (files)
  234.         (confirm)
  235.     )
  236.     
  237. ; tell the user of our progress
  238.     (complete 40)
  239.  
  240. ; delete out of date stuff
  241.     (working omp "Deleting some out of date L: files from the CanDo Program disk.")
  242.     
  243.     ; handlers "Disk-Validator, FastFileSystem, Ram-Handler"
  244.     (delete "CanDo:L/Disk-Validator")
  245.     (delete "CanDo:L/FastFileSystem")
  246.     (delete "CanDo:L/Ram-Handler")
  247.     
  248. ; tell the user of our progress
  249.     (complete 45)
  250.  
  251.     
  252. ;**********************************
  253. ;***** UPDATE LIBS: DIRECTORY *****
  254. ;**********************************
  255.  
  256. ; first copy over the new libs: stuff
  257.     (working omp "Scanning for new Libs: files on Workbench.")
  258.     
  259.     (copyfiles
  260.         (prompt "Copying 2.x Workbench's Libs: files needed by CanDo")
  261.         (help "This will copy various Libs: files to the CanDo Program disk."
  262.             newline
  263.             newline
  264.             @copyfiles-help
  265.         )
  266.         (source "Workbench_Master:Libs")
  267.         (dest "CanDo:Libs")
  268.         ; files needed "DiskFont.Library, Version.Library, MathTrans.Library,
  269.         ;               MathIEEEDoubBas.Library, MathIEEEDoubTrans.Library,
  270.         ;                IffParse and ASL"
  271.         (pattern "(DiskF|Vers|MathTr|MathIEEEDoub|Iff|Asl)#?")
  272.         (files)
  273.         (confirm)
  274.     )
  275.     
  276. ; tell the user of our progress
  277.     (complete 50)
  278.  
  279. ; delete out of date stuff
  280.     (working omp "Deleting some out of date Libs: files from the CanDo Program disk.")
  281.     
  282.     ; libraries "Icon.Library, Info.Library"
  283.     (delete "CanDo:Libs/Icon.Library")
  284.     (delete "CanDo:Libs/Info.Library")
  285.     
  286. ; tell the user of our progress
  287.     (complete 55)
  288.  
  289.     
  290. ;************************************
  291. ;***** UPDATE SYSTEM: DIRECTORY *****
  292. ;************************************
  293.  
  294. ; first copy over the new sys:system stuff
  295.     (working omp "Scanning for new System files on Workbench.")
  296.     
  297.     (copyfiles
  298.         (prompt "Copying 2.x Workbench's System files needed by CanDo")
  299.         (help "This will copy various System files to the CanDo Program disk."
  300.             newline
  301.             newline
  302.             @copyfiles-help
  303.         )
  304.         (source "Workbench_Master:System")
  305.         (dest "CanDo:System")
  306.         ; files needed "CLI, DiskCopy, Format, BindMonitor"
  307.         (pattern "(CLI|DiskCopy|Format|BindMonitor)")
  308.         (infos)
  309.         (files)
  310.         (confirm)
  311.     )
  312.     
  313. ; tell the user of our progress
  314.     (complete 60)
  315.  
  316. ; delete out of date stuff
  317.     (working omp "Deleting some out of date System files from the CanDo Program disk.")
  318.     
  319.     ; file "SetMap" and its icon
  320.     (delete "CanDo:System/SetMap")
  321.     (delete "CanDo:System/SetMap.info")
  322.     
  323. ; tell the user of our progress
  324.     (complete 65)
  325.  
  326.     
  327. ;*******************************************
  328. ;***** CREATE/COPY WBSTARTUP DIRECTORY *****
  329. ;*******************************************
  330.  
  331. ; create the initial directory
  332.     (working omp "Creating WBStartup on the CanDo Program disk.")
  333.     
  334.     ; create the wbstartup directory
  335.     (makedir "CanDo:WBStartup"
  336.         (infos)
  337.     )
  338.  
  339. ; tell the user of our progress
  340.     (complete 70)
  341.     
  342.  
  343. ;****************************************
  344. ;***** CREATE/COPY ENVARC DIRECTORY *****
  345. ;****************************************
  346.  
  347. ; create the initial directory
  348.     (working omp "Creating default ENVARC drawer on the CanDo Program disk.")
  349.     
  350.     ; create the prefs directory
  351.     (makedir "CanDo:Prefs"
  352.         (infos)
  353.     )
  354.     
  355. ; tell the user of our progress
  356.     (complete 75)
  357.  
  358.     ; make presets and Env-Archive drawers
  359.     (set env_dir NOPE)
  360.     (if (= (exists "CanDo:Prefs") is_a_dir)
  361.         (
  362.             (copyfiles
  363.                 (prompt "Copying 2.x Workbench preference files needed by CanDo")
  364.                 (help "This will copy various preference files to the CanDo Program disk."
  365.                     newline
  366.                     newline
  367.                     @copyfiles-help
  368.                 )
  369.                 (source "Workbench_Master:Prefs")
  370.                 (dest "CanDo:Prefs")
  371.                 ; directories needed "Presets and Env-Archive"
  372.                 (pattern "(Presets|Env-Archive)")
  373.                 (infos)
  374.                 (confirm)
  375.             )
  376.             (if (= (exists "CanDo:Prefs/Env-Archive") is_a_dir)
  377.                 (set env_dir YES)
  378.             )
  379.         )
  380.     )
  381.  
  382. ; tell the user of our progress
  383.     (complete 80)
  384.  
  385.  
  386. ;*******************************
  387. ;***** UPDATE S: DIRECTORY *****
  388. ;*******************************
  389.  
  390. ; delete out of date stuff
  391.     (working omp "Updating S: files on the CanDo Program disk.")
  392.     
  393.     ; rename file "Startup-Sequence"
  394.     (rename "CanDo:S/Startup-Sequence" "CanDo:S/Orig-Startup-Sequence")
  395.     
  396. ; tell the user of our progress
  397.     (complete 85)
  398.  
  399.     ; create a new Startup-Sequence
  400.     (working omp "Creating a new Startup-Sequence file.")
  401.     
  402.     (set temp
  403.         (cat
  404.             "Version >NIL:" newline
  405.             "FailAt 21" newline
  406.             "SetClock >NIL: load" newline
  407.         )
  408.     )
  409.     
  410.     (if (= env_dir YES)
  411.         (set temp
  412.             (cat
  413.                 temp
  414.                 "Copy >NIL: ENVARC: ram:env all quiet noreq" newline
  415.             )
  416.         )
  417.     )
  418.     
  419.     (set temp
  420.         (cat
  421.             temp
  422.             "MakeDir ram:T ram:ClipBoards" newline
  423.             "Assign T: Ram:T ;set up T: directory for scripts" newline
  424.             "Assign CLIPS: Ram:ClipBoards" newline
  425.             "If Exists Sys:Monitors" newline
  426.             "  List >T:mon-start Sys:Monitors/~#?.info lformat=\"Run >NIL: %s%s\"" newline
  427.             "  Execute T:mon-start" newline
  428.             "EndIf" newline
  429.             "Assign ENV: Ram:Env" newline
  430.             "Run >NIL: IPrefs >NIL:" newline
  431.             "Wait >NIL: 5" newline
  432.             "AddBuffers >NIL: DF0: 15" newline
  433.             "Echo \"CanDo Workbench Disk. 2.x Release Version $Workbench\"" newline
  434.             "BindDrivers" newline
  435.             "SetEnv Workbench $Workbench" newline
  436.             "SetEnv Kickstart $Kickstart" newline
  437.             "Resident c:Execute pure add" newline
  438.             "Resident c:List pure add" newline
  439.             "Resident c:Assign pure add" newline
  440.             "Path Ram: C: Sys:Utilities Sys:System S: add" newline
  441.             "If Exists S:User-Startup" newline
  442.             "  Execute S:User-Startup" newline
  443.             "EndIf" newline
  444.             "LoadWB" newline
  445.             "EndCli >NIL:" newline
  446.         )
  447.     )
  448.     (textfile (dest "CanDo:S/Startup-Sequence")
  449.         (append temp)
  450.     )
  451.  
  452. ; tell the user of our progress
  453.     (complete 90)
  454.  
  455.  
  456. ;***************************************
  457. ;***** MAKE CANDO DISK A BOOT DISK *****
  458. ;***************************************
  459.  
  460. ; we don't know which disk cando is in so we cannot make it a 2.x boot disk
  461. ;    (working omp "Installing 2.x BootBlock on CanDo disk.")
  462. ;    
  463. ;    (set cando_device (figureout cando device))
  464. ;    (run "Workbench_Master:C/Install "||cando_device)
  465.  
  466.     (complete 95)
  467.  
  468. ;*****************************
  469. ;***** WE BE ALMOST DONE *****
  470. ;*****************************
  471.  
  472. ; make sure that default-dir is pointing to the right place
  473.     (set @default-dest "CanDo:")
  474.  
  475. ; unmake those three assignments
  476.     (makeassign "Workbench_Master" (safe))
  477.     (makeassign "CanDoProgram_Master" (safe))
  478.  
  479. ; tell the user of our progress
  480.     (complete 100)
  481.  
  482. ; final message for our viewers
  483.     (exit "The CanDo boot disk has now been updated to Workbench 2.x.") ; altspace in name
  484.